home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 4 / Meeting Pearls Vol. IV (1996)(GTI - Schatztruhe)[!].iso / Pearls / texmf / Install.HD < prev    next >
Text File  |  1996-10-08  |  30KB  |  1,075 lines

  1. ; $VER: PasTeX 1.4 (8.10.96)
  2. ; Script to install PasTeX from CD-ROM
  3.  
  4. (complete 0)
  5. (set old_level @user-level)
  6.  
  7.  
  8.  
  9. ;
  10. ; strings
  11. ;
  12.  
  13. (set #ask-installdir
  14. (cat "Please choose a directory, where PasTeX should be installed."
  15.      "(Note: I will create a directory 'texmf' in your directory.)"
  16. ))
  17.  
  18. (set #ask-installdir-help
  19. (cat "You have to choose a directory, where the software will be copied."
  20.      "This directory must exist, please create one, if necessary. "
  21.      "E.g. if you choose Work: I will install TeX into Work:texmf"
  22. ))
  23.  
  24.  
  25. (set #ask-instmask
  26. (cat "Which parts of the CD TeX installation should be installed"
  27.      " on your harddisk?"
  28. ))
  29.  
  30. (set #ask-instmask-help
  31. (cat "Choose which parts of the TeX installation you need.\n\n"
  32.      "PasTeX programs:\n  Main TeX programs (initex, virtex, ShowDVI, DVIprint, SpecialHost, flib, lsfont)\n\n"
  33.      "TeX utilities:\n  Various useful programs\n\n"
  34.      "TeX format files:\n  plain.fmt, latex.fmt ...\n\n"
  35.      "TeX macros:\n  LaTeX, style files, ...\n\n"
  36.      "pk fonts:\n  Fonts for different resolutions/printers\n\n"
  37.      "Metafont programs:\n  programs to generate pk-fonts\n\n"
  38.      "Metafont font sources:\n  sources of the pk-files"
  39. ))
  40.  
  41. (set #copy-pt-progs
  42. (cat "Copy the core programs of PasTeX:"
  43. ))
  44.  
  45. (set #copy-pt-ger-locale
  46. (cat "Copy the german locale file for DVIprint and ShowDVI:"
  47. ))
  48.  
  49. (set #copy-pt-ita-locale
  50. (cat "Copy the italian locale file for DVIprint and ShowDVI:"
  51. ))
  52.  
  53. (set #copy-tfm
  54. (cat "Copy TFM-font files:"
  55. ))
  56.  
  57. (set #copy-rexx
  58. (cat "Copy ARexx scripts:"
  59. ))
  60.  
  61. (set #copy-rexx-namestruc
  62. (cat "Copy ARexx script 'namestruc' to REXX:"
  63. ))
  64.  
  65. (set #copy-config
  66. (cat "Copy config-files:"
  67. ))
  68.  
  69. (set #copy-icons
  70. (cat "Copy default-icons:"
  71. ))
  72.  
  73. (set #copy-ps
  74. (cat "Copy PostScript support files:"
  75. ))
  76.  
  77. (set #ask-texprgmask
  78. (cat "Which version of IniTeX/VirTeX would you like to install?"
  79. ))
  80.  
  81. (set #ask-texprgmask-help @askchoice-help
  82. )
  83.  
  84. (set #copy-req-lib
  85. (cat "Copy req.library:"
  86. ))
  87.  
  88. (set #help-req-lib
  89. (cat "ShowDVI needs the req.library for the file and color requester."
  90. ))
  91.  
  92. (set #copy-tex-pool
  93. (cat "Copy TeX.pool file:"
  94. ))
  95.  
  96. (set #copy-tex-norm-progs
  97. (cat "Copy IniTeX/Virtex (small/68000):"
  98. ))
  99.  
  100. (set #copy-tex-big-progs
  101. (cat "Copy IniTeX/Virtex (big/68000):\n"
  102.      "(You have to rename the programs)"
  103. ))
  104.  
  105. (set #copy-tex-20-progs
  106. (cat "Copy IniTeX/Virtex (small/68020):\n"
  107.      "(You have to rename the programs)"
  108. ))
  109.  
  110. (set #copy-tex-big-20-progs
  111. (cat "Copy IniTeX/Virtex (big/68020):\n"
  112.      "(You have to rename the programs)"
  113. ))
  114.  
  115. (set #ask-texutil
  116. (cat "Which TeX utilities do you want to install:"
  117. ))
  118.  
  119. (set #ask-texutil-help @askoptions-help
  120. )
  121.  
  122. (set #ask-formats
  123. (cat "Which TeX format files do you want to install:"
  124. ))
  125.  
  126. (set #ask-formats-help @askoptions-help
  127. )
  128.  
  129. (set #ask-inputs
  130. (cat "Which TeX macros do you want to install:\n"
  131.      "(help explains the macro packages)"
  132. ))
  133.  
  134. (set #ask-inputs-help
  135. (cat "The following macro packages can be installed automatically:\n"
  136.      "\n"
  137.      "generic/german - german.sty 2.5c for German (La)TeX users\n"
  138.      "generic/hyphen - hyphenation patterns for building format files\n"
  139.      "plain/base - the basic plain.tex macro file\n"
  140.      "plain/nice - NiceTeX macro package for plain TeX\n"
  141.      "plain/texinfo - macros for Texinfo documentation system\n"
  142.      "latex/base - the basic macros you need for LaTeX\n"
  143.      "latex/graphics - include graphics and colors in LaTeX\n"
  144.      "latex/babel - Babel language switching mechanism\n"
  145.      "latex/epic - extensions to LaTeX picture environment\n"
  146.      "latex/eepic - extensions to epic\n"
  147.      "\n"
  148.      "There are more macro packages for LaTeX in source/latex "
  149.      "you can copy and install manually."
  150. ))
  151.  
  152. (set #ask-resolutions
  153. (cat "Which TeX pk-fonts do you want to install:"
  154. ))
  155.  
  156. (set #ask-resolutions-help @askoptions-help
  157. )
  158.  
  159. (set #ask-preview
  160. (cat "What set of preview-fonts do you want to install:"
  161. ))
  162.  
  163. (set #ask-preview-help @askchoice-help
  164. )
  165.  
  166. (set #ask-180
  167. (cat "What set of 180x180dpi fonts do you want to install:"
  168. ))
  169.  
  170. (set #ask-180-help @askchoice-help
  171. )
  172.  
  173. (set #ask-300
  174. (cat "What set of 300x300dpi fonts do you want to install:"
  175. ))
  176.  
  177. (set #ask-300-help @askchoice-help
  178. )
  179.  
  180. (set #ask-360
  181. (cat "What set of 360x360dpi fonts do you want to install:"
  182. ))
  183.  
  184. (set #ask-360-help @askchoice-help
  185. )
  186.  
  187. (set #ask-600
  188. (cat "What set of 600x600dpi fonts do you want to install:"
  189. ))
  190.  
  191. (set #ask-600-help @askchoice-help
  192. )
  193.  
  194. (set #ask-pkfax
  195. (cat "What set of 204x196dpi fax-fonts do you want to install:"
  196. ))
  197.  
  198. (set #ask-pkfax-help @askchoice-help
  199. )
  200.  
  201. (set #ask-callmf
  202. (cat "How would you like to have the automatical font generation:"
  203. ))
  204.  
  205. (set #ask-callmf-help
  206. (cat "The PasTeX DVI-drivers supports a possibility to automatical call Metafont for"
  207.      "missing fonts. The ENV: variable CALLMF decide how Metafont will be called.\n\n"
  208.      "If there is no ENV:CALLMF, no fontcreation will be done.\n\n"
  209.      "If CALLMF points to MF:rexx/MakeBatch.rexx, a script will be created with an"
  210.      "entry for each missing font. If you call the script, all fonts which are missed"
  211.      "will be created.\n\n"
  212.      "If CALLMF points to MF:rexx/MakeTeXFont.rexx, each missing font will be created"
  213.      "immediatly. But this can take some time."
  214. ))
  215.  
  216. (set #startup-prompt
  217. (cat "I have to add some commands to your S:User-Startup."
  218. ))
  219.  
  220. (set #startup-help
  221. (cat "I have to add some commands to your S:User-Startup.\n\n"
  222.      "PasTeX needs some assigns to work:\n"
  223.      "TeX:   root directory of the TeX installation.\n"
  224.      "MF:    root directory of Metafont.\n"
  225.      "PKVol-assignments to the pk-font directories of the\n"
  226.      "CD-ROM. Needed for font-caching\n\n"
  227.      "Two path components are added too:\n"
  228.      "TeX:bin for the normal TeX programs/utilities\n"
  229.      "MF:bin  for the Metafont programs."
  230. ))
  231.  
  232. ;--------------------------------------------------------
  233.  
  234. ;
  235. ; copyfonts procedure
  236. ;
  237.  
  238. (procedure copyfonts
  239.   (makedir pkdestdir)
  240.   (set fntlst "(cmbx10|cmbx5|cmbx7|cmcsc10|cmex10|cmmi10|cmmi5|cmmi7|cmr10|cmr5|cmr7|cmsl10|cmss10|cmssbx10|cmssi10|cmsy10|cmsy5|cmsy7|cmti10|cmtt10)")
  241.  
  242.   (if (= pkcopyopt 1)
  243.    ( ; then
  244.      ; small subset
  245.      (set fntpat (cat fntlst ".#?"))
  246.    )
  247.    ( ; else
  248.      ; all fonts (or no fonts at all!)
  249.      (set fntpat "#?")
  250.    )
  251.   )
  252.  
  253.   (if (<> pkcopyopt 0)
  254.    ( ; then
  255.      ; there are fonts to copy
  256.      (foreach pksourcedir pkpat
  257.        (if (= @each-type 2)
  258.         ( ; then directory
  259.           (copyfiles (source  (tackon pksourcedir @each-name))
  260.                      (dest    (tackon pkdestdir @each-name))
  261.                      (pattern fntpat))
  262.         )
  263.        )
  264.      )
  265.    )
  266.   )
  267. )
  268.  
  269.  
  270.  
  271.  
  272. ;--------------------------------------------------------
  273. ;--------------------------------------------------------
  274. ;--------------------------------------------------------
  275.  
  276.  
  277.  
  278. (set sourcedir (pathonly @icon))
  279.  
  280. (set target (askdir (prompt #ask-installdir)
  281.                     (help   #ask-installdir-help)
  282.                     (default "Work:")
  283.             )
  284. )
  285.  
  286. (set @default-dest (tackon target "texmf"))
  287. (set texbindir  (tackon @default-dest "bin"))
  288. (set formatdir  (tackon @default-dest "formats"))
  289. (set bigfmtdir  (tackon @default-dest "formats.big"))
  290. (set macdir     (tackon @default-dest "tex"))
  291. (set fontsdir   (tackon @default-dest "fonts"))
  292. (set pkdir      (tackon fontsdir      "pk"))
  293. (set mfdir      (tackon @default-dest "metafont"))
  294. (set mfbindir   (tackon mfdir         "bin"))
  295.  
  296. (makedir @default-dest (infos))
  297.  
  298.  
  299. ;
  300. ; ---------------------------------------------------------------------------
  301. ;
  302. ; Welche Pakete sollen installiert werden?
  303. ;
  304. ; ---------------------------------------------------------------------------
  305. ;
  306.  
  307. (if (>= @user-level 1)
  308.  (set instmask (askoptions (choices "PasTeX programs"
  309.                                     "TeX utilities"
  310.                                     "TeX format files"
  311.                                     "TeX macros"
  312.                                     "pk-fonts"
  313.                                     "Metafont programs"
  314.                                     "Metafont font sources"
  315.                            )
  316.                            (prompt #ask-instmask)
  317.                            (help   #ask-instmask-help)
  318.                            (default 31)
  319.                )
  320.  )
  321.  (set instmask 31)
  322. )
  323.  
  324.  
  325.  
  326. ;
  327. ; ---------------------------------------------------------------------------
  328. ;
  329. ; Nun fuer alle zu installierenden Pakete diverse Fragen stellen
  330. ;
  331. ; ---------------------------------------------------------------------------
  332. ;
  333.  
  334.  
  335.  
  336. ;------PasTeX prg install----------
  337.  
  338. (if (IN instmask 0)
  339.       (     (if (>= @user-level 1)
  340.                   (     (set texprgmask (askoptions (choices "initex/virtex"
  341.                                                              "initex/virtex big-version"
  342.                                                              "initex/virtex 020-version"
  343.                                                              "initex/virtex big-020-version"
  344.                                                     )
  345.                                                     (prompt #ask-texprgmask)
  346.                                                     (help   #ask-texprgmask-help)
  347.                                                     (default 1)
  348.                                         )
  349.                         )
  350.                   )
  351.                   (set texprgmask 1)
  352.             )
  353.             (set installbigfmt 0)
  354.             (if (OR (IN texprgmask 1) (IN texprgmask 3))
  355.                   (     (set installbigfmt 1)
  356.                         (message "You have choosen a big version of initex and virtex.\n\n"
  357.                                  "So I will install the big-format files, too!"
  358.                         )
  359.                   )
  360.             )
  361.  
  362.       )
  363.       (    (set texprgmask 0)
  364.            (set installbigfmt 0)
  365.       )
  366.  
  367. )
  368.  
  369.  
  370.  
  371. ;------Utilities-------------------
  372. (if (IN instmask 1)
  373.  ( ; then
  374.    (user 2)
  375.    (set texutilmask (askoptions (prompt #ask-texutil)
  376.                                 (help #ask-texutil-help)
  377.                                 (choices        "bibtex"
  378.                                                 "bm2font"
  379.                                                 "c++2latex"
  380.                                                 "dvi2tty"
  381.                                                 "dvidvi"
  382.                                                 "dvilj2p"
  383.                                                 "dvips"
  384.                                                 "dvips (68040 version)"
  385.                                                 "dvitype"
  386.                                                 "lacheck (LaTeX check)"
  387.                                                 "fig / fig2dev / transfig"
  388.                                                 "makeindex"
  389.                                                 "pbmtopk / pktopbm"
  390.                                                 "makeinfo / texindex"
  391.                                 )
  392.                                 (default 0)
  393.                     )
  394.    )
  395.    (user old_level)
  396.  )
  397.  ( ; else
  398.    (set texutilmask 0)
  399.  )
  400. )
  401.  
  402.  
  403. ;------TeX formats------------------
  404. (if (IN instmask 2)
  405.  ( ; then
  406.    (user 2)
  407.    (set formatmask (askoptions  (prompt #ask-formats)
  408.                                 (help   #ask-formats-help)
  409.                                 (choices "plain   (plain, English)"
  410.                                          "gplain  (plain, German)"
  411.                                          "latex   (LaTeX2e, English+German)"
  412.                                 )
  413.                                 (default 7)
  414.                )
  415.    )
  416.  
  417.   (if (IN formatmask 2)
  418.    (message "You have choosen the LaTeX format files.\n\n"
  419.             "In order to use these files, you also have to install the LaTeX macros!"
  420.    )
  421.   )
  422.  
  423.    (user old_level)
  424.  )
  425.  ( ; else
  426.    (set formatmask 0)
  427.  )
  428. )
  429.  
  430.  
  431. ;------TeX macros------------------
  432. (if (IN instmask 3)
  433.  ( ; then
  434.    (user 2)
  435.  
  436.    (set macdef 17)
  437.    (if (IN formatmask 2)
  438.     (set macdef 1009)
  439.    )
  440.  
  441.    (set inputs (askoptions  (prompt #ask-inputs)
  442.                             (help   #ask-inputs-help)
  443.                             (choices    "generic/german"
  444.                                         "generic/hyphen"
  445.                                         "plain/base"
  446.                                         "plain/nice"
  447.                                         "plain/texinfo"
  448.                                         "latex/base"
  449.                                         "latex/graphics"
  450.                                         "latex/babel"
  451.                                         "latex/epic"
  452.                                         "latex/eepic"
  453.                            )
  454.                            (default macdef)
  455.                )
  456.    )
  457.  
  458.   (if (IN inputs 5)
  459.    (message "You have choosen the LaTeX macro files.\n\n"
  460.             "You can call LaTeX with:\n"
  461.             "virtex &latex\n\n\n"
  462.             "If you get problems with the TeX capacity, use virtex-big."
  463.    )
  464.   )
  465.  
  466.    (user old_level)
  467.  
  468.  )
  469.  ( ; else
  470.    (set inputs 0)
  471.  )
  472. )
  473.  
  474. ;------pk-fonts--------------------
  475. (if (IN instmask 4)
  476.  (
  477.    (user 2)
  478.    (set resomask (askoptions (prompt #ask-resolutions)
  479.                              (help   #ask-resolutions-help)
  480.                              (choices   "preview"
  481.                                         "180x180 dpi (e.g. NEC P6 draft)"
  482.                                         "300x300 dpi (e.g. HP DeskJet)"
  483.                                         "360x360 dpi (e.g. NEC P6 high quality)"
  484.                                         "600x600 dpi (e.g. LaserJet 4)"
  485.                                         "204x196 dpi (FAX resolution)"
  486.                              )
  487.                              (default 1)
  488.                  )
  489.    )
  490.    (user old_level)
  491.  
  492.    ; preview fonts
  493.    (if (IN resomask 0)
  494.     ( ; then
  495.       (set pkprev     (askchoice (prompt #ask-preview)
  496.                                  (help   #ask-preview-help)
  497.                                  (choices "none (use font caching)"
  498.                                           "only a small subset (use font caching)"
  499.                                           "all fonts (of this CD)"
  500.                                  )
  501.                                  (default 0)
  502.                       )
  503.       )
  504.     )
  505.    )
  506.  
  507.    ; 180x180
  508.    (if (IN resomask 1)
  509.     ( ; then
  510.       (set pk180    (askchoice (prompt #ask-180)
  511.                                (help   #ask-180-help)
  512.                                 (choices "none (use font caching)"
  513.                                          "only a small subset (use font caching)"
  514.                                          "all fonts (of this CD)"
  515.                                 )
  516.                                 (default 0)
  517.                      )
  518.       )
  519.     )
  520.    )
  521.  
  522.    ; 300x300
  523.    (if (IN resomask 2)
  524.     ( ; then
  525.       (set pk300     (askchoice (prompt #ask-300)
  526.                                 (help   #ask-300-help)
  527.                                 (choices "none (use font caching)"
  528.                                          "only a small subset (use font caching)"
  529.                                          "all fonts (of this CD)"
  530.                                 )
  531.                                 (default 0)
  532.                      )
  533.       )
  534.     )
  535.    )
  536.  
  537.    ; 360x360
  538.    (if (IN resomask 3)
  539.     ( ; then
  540.       (set pk360     (askchoice (prompt #ask-360)
  541.                                 (help   #ask-360-help)
  542.                                 (choices "none (use font caching)"
  543.                                          "only a small subset (use font caching)"
  544.                                          "all fonts (of this CD)"
  545.                                 )
  546.                                 (default 0)
  547.                      )
  548.       )
  549.     )
  550.    )
  551.  
  552.  
  553.    ; 600x600
  554.    (if (IN resomask 4)
  555.     ( ; then
  556.       (set pk600     (askchoice (prompt #ask-600)
  557.                                 (help   #ask-600-help)
  558.                                 (choices "none (use font caching)"
  559.                                          "only a small subset (use font caching)"
  560.                                          "all fonts (of this CD)"
  561.                                 )
  562.                                 (default 0)
  563.                      )
  564.       )
  565.     )
  566.    )
  567.  
  568.    ; 204x196
  569.    (if (IN resomask 5)
  570.     ( ; then
  571.       (set pkfax     (askchoice (prompt #ask-pkfax)
  572.                                 (help   #ask-pkfax-help)
  573.                                 (choices "none (use font caching)"
  574.                                          "only a small subset (use font caching)"
  575.                                          "all fonts (of this CD)"
  576.                                 )
  577.                                 (default 0)
  578.                      )
  579.       )
  580.     )
  581.    )
  582.  )
  583. )
  584.  
  585. ;------mf progs--------------------
  586. (if (IN instmask 5)
  587.  ( ; then
  588.    (set callmf (askchoice (prompt  #ask-callmf)
  589.                           (help    #ask-callmf-help)
  590.                           (choices "no automatical font creation"
  591.                                    "create a batchfile for font creation"
  592.                                    "create missing fonts immediately"
  593.                           )
  594.                           (default 2)
  595.                )
  596.    )
  597.  )
  598. )
  599.  
  600. ;------mf fnt source---------------
  601.  
  602. ; hier gibt's nichts zu fragen
  603.  
  604.  
  605.  
  606. ;
  607. ; ---------------------------------------------------------------------------
  608. ;
  609. ; Nun die Pakete wirklich installieren.
  610. ; Hier nun keine User-Aktionen!
  611. ;
  612. ; ---------------------------------------------------------------------------
  613. ;
  614.  
  615.  
  616. ;------PasTeX prg install----------
  617. (if (IN instmask 0)
  618.  (
  619.   (set texbindir (tackon @default-dest "bin"))
  620.   (copyfiles (prompt  #copy-pt-progs)
  621.              (source  (tackon sourcedir "bin"))
  622.              (choices "ShowDVI" "DVIprint" "flib" "SpecialHost" "PToFront" "lsfont")
  623.              (dest    texbindir)
  624.              (infos)
  625.   )
  626.   (copyfiles (source (tackon sourcedir "bin.info"))
  627.              (dest   @default-dest)
  628.   )
  629.   (makedir   (tackon texbindir "catalogs"))
  630.   (copyfiles (prompt #copy-pt-ger-locale)
  631.              (source (tackon sourcedir "bin/catalogs/deutsch"))
  632.              (dest   (tackon texbindir "catalogs/deutsch"))
  633.              (all)
  634.   )
  635.   (copyfiles (prompt #copy-pt-ita-locale)
  636.              (source (tackon sourcedir "bin/catalogs/italiano"))
  637.              (dest   (tackon texbindir "catalogs/italiano"))
  638.              (all)
  639.   )
  640.  
  641.   (makedir   fontsdir)
  642.   (makedir   (tackon fontsdir "pk"))
  643.   (makedir   (tackon fontsdir "vf"))
  644.   (makedir   (tackon fontsdir "afm"))
  645.   (makedir   (tackon fontsdir "type1"))
  646.   (copyfiles (prompt #copy-tfm)
  647.              (source (tackon (tackon sourcedir "fonts") "tfm"))
  648.              (dest   (tackon fontsdir "tfm"))
  649.              (all)
  650.   )
  651.   (copyfiles (source (tackon sourcedir "fonts.info"))
  652.              (dest   @default-dest)
  653.   )
  654.  
  655.  
  656.   (copyfiles (prompt #copy-rexx)
  657.              (source sourcedir)
  658.              (dest   @default-dest)
  659.              (choices "rexx")
  660.              (infos)
  661.   )
  662.  
  663.   (copyfiles (prompt  #copy-rexx-namestruc)
  664.              (source  (tackon sourcedir "rexx"))
  665.              (dest    "rexx:")
  666.              (choices "namestruc")
  667.   )
  668.  
  669.   (copyfiles (prompt #copy-config)
  670.              (source sourcedir)
  671.              (dest   @default-dest)
  672.              (choices "config")
  673.              (infos)
  674.   )
  675.  
  676.   (copyfiles (prompt #copy-ps)
  677.              (source sourcedir)
  678.              (dest   @default-dest)
  679.              (choices "ps")
  680.              (infos)
  681.   )
  682.  
  683.   (copyfiles (prompt #copy-icons)
  684.              (source sourcedir)
  685.              (dest   @default-dest)
  686.              (choices "icons")
  687.              (infos)
  688.   )
  689.  
  690.   (copylib (prompt #copy-req-lib)
  691.            (help   #help-req-lib)
  692.            (source (tackon (tackon sourcedir "libs") "req.library"))
  693.            (dest   "LIBS:")
  694.            (optional "nofail")
  695.            (confirm)
  696.   )
  697.  
  698.   (if (<> texprgmask 0)
  699.    (
  700.     (copyfiles (prompt  #copy-tex-pool)
  701.                (source  (tackon sourcedir "pool"))
  702.                (dest    (tackon @default-dest "pool"))
  703.                (choices "tex.pool")
  704.     )
  705.     (copyfiles (source (tackon sourcedir "pool.info"))
  706.                (dest   @default-dest)
  707.     )
  708.    )
  709.   )
  710.  
  711.   (if (IN texprgmask 0)
  712.    (
  713.     (copyfiles (prompt #copy-tex-norm-progs)
  714.                (source (tackon sourcedir "bin"))
  715.                (choices "initex" "virtex")
  716.                (dest   texbindir)
  717.                (infos)
  718.     )
  719.   ))
  720.  
  721.   (if (IN texprgmask 1)
  722.    (
  723.     (copyfiles (prompt #copy-tex-big-progs)
  724.                (source (tackon sourcedir "bin"))
  725.                (choices "initex-big" "virtex-big")
  726.                (dest   texbindir)
  727.                (infos)
  728.                (optional)
  729.     )
  730.   ))
  731.  
  732.   (if (IN texprgmask 2)
  733.    (
  734.     (copyfiles (prompt #copy-tex-20-progs)
  735.                (source (tackon sourcedir "bin"))
  736.                (choices "initex-20" "virtex-20")
  737.                (dest   texbindir)
  738.                (infos)
  739.                (optional)
  740.     )
  741.   ))
  742.  
  743.   (if (IN texprgmask 3)
  744.    (
  745.     (copyfiles (prompt #copy-tex-big-20-progs)
  746.                (source (tackon sourcedir "bin"))
  747.                (choices "initex-big-20" "virtex-big-20")
  748.                (dest   texbindir)
  749.                (infos)
  750.                (optional)
  751.     )
  752.   ))
  753.  
  754.  )
  755. )
  756.  
  757.  
  758. (complete 4)
  759.  
  760. ;------Utilities-------------------
  761.  
  762. (set n 0)
  763. (set texutilpat "(%")
  764. (while (set texutil (select n "bibtex"
  765.                               "bm2font"
  766.                               "c++2latex"
  767.                               "dvi2tty"
  768.                               "dvidvi"
  769.                               "dvilj2p"
  770.                               "dvips"
  771.                               "dvips040"
  772.                               "dvitype"
  773.                               "lacheck"
  774.                               "fig|fig2dev|transfig"
  775.                               "makeindex"
  776.                               "pbmtopk|pktopbm"
  777.                               "makeinfo|texindex"
  778.                               ""
  779.                      )
  780.        )
  781. (
  782.     (if (IN texutilmask n)
  783.     (
  784.         (set texutilpat (cat texutilpat "|" texutil))
  785.     ))
  786.     (set n (+ n 1))
  787. ))
  788.  
  789. (copyfiles (source (tackon sourcedir "bin"))
  790.            (dest texbindir)
  791.            (pattern (cat texutilpat ")")))
  792.  
  793. (if (OR (IN texutilmask 6) (IN texutilmask 7))
  794.       (
  795.             (copyfiles (source (tackon (tackon sourcedir "bin") "afm2tfm"))
  796.                        (dest texbindir)
  797.             )
  798.             (copyfiles (source (tackon (tackon (tackon sourcedir "fonts") "tfm") "PStfms"))
  799.                        (dest   (tackon (tackon fontsdir "tfm") "PStfms"))
  800.                        (all)
  801.             )
  802.             (copyfiles (source (tackon (tackon (tackon sourcedir "fonts") "vf") "PSvfs"))
  803.                        (dest   (tackon (tackon fontsdir "vf") "PSvfs"))
  804.                        (all)
  805.             )
  806.       )
  807. )
  808.  
  809.  
  810.  
  811. (complete 7)
  812.  
  813.  
  814. ;------TeX formats------------------
  815. (if (<> formatmask 0)
  816.  ( ; then
  817.    (set n 0)
  818.    (set formatpat "(%")
  819.    (while (set format  (select n "plain.fmt|plain.log"
  820.                                  "gplain.fmt|gplain.log"
  821.                                  "latex.fmt|latex.log"
  822.                                  ""
  823.                        )
  824.           )
  825.    (
  826.       (if (IN formatmask n)
  827.       (
  828.          (set formatpat (cat formatpat "|" format))
  829.       ))
  830.       (set n (+ n 1))
  831.    ))
  832.  
  833.    (set formatpat (cat formatpat ")"))
  834.  
  835.    (if (= installbigfmt 1)
  836.      (
  837.        (copyfiles (source  (tackon sourcedir "formats.big"))
  838.                   (dest    bigfmtdir)
  839.                   (pattern formatpat)
  840.        )
  841.        (copyfiles (source (tackon sourcedir "formats.big.info"))
  842.                   (dest   @default-dest)
  843.        )
  844.      )
  845.    )
  846.  
  847.    (copyfiles (source  (tackon sourcedir "formats"))
  848.               (dest    formatdir)
  849.               (pattern formatpat)
  850.    )
  851.    (copyfiles (source (tackon sourcedir "formats.info"))
  852.               (dest   @default-dest)
  853.    )
  854.  
  855.  
  856.  )
  857. )
  858.  
  859.  
  860. (complete 10)
  861.  
  862.  
  863.  
  864. ;------TeX macros------------------
  865. (if (IN instmask 3)
  866.  (
  867.  
  868.   (makedir macdir)
  869.   (copyfiles (source (tackon sourcedir "tex.info"))
  870.              (dest   @default-dest)
  871.   )
  872.   (makedir (tackon macdir "generic"))
  873.   (makedir (tackon macdir "plain"))
  874.   (makedir (tackon macdir "latex"))
  875.  
  876.   (set n 0)
  877.   (while (set macrodir (select n "generic/german"
  878.                                  "generic/hyphen"
  879.                                  "plain/base"
  880.                                  "plain/nice"
  881.                                  "plain/texinfo"
  882.                                  "latex/base"
  883.                                  "latex/graphics"
  884.                                  "latex/babel"
  885.                                  "latex/epic"
  886.                                  "latex/eepic"
  887.                                  ""
  888.                        )
  889.          )
  890.     (
  891.       (if (IN inputs n)
  892.         (
  893.           (copyfiles (source  (tackon (tackon sourcedir "tex") macrodir))
  894.                      (dest    (tackon macdir macrodir))
  895.                      (all)
  896.           )
  897.         )
  898.       )
  899.       (set n (+ n 1))
  900.     )
  901.   )
  902.  
  903.  
  904.  )
  905. )
  906.  
  907. (complete 30)
  908.  
  909.  
  910. ;------pk-fonts--------------------
  911. (if (IN instmask 4)
  912.  ( ; then
  913.    (makedir fontsdir)
  914.    (copyfiles (source (tackon sourcedir "fonts.info"))
  915.               (dest   @default-dest)
  916.    )
  917.    (makedir pkdir)
  918.  
  919.    ; preview fonts
  920.    (if (IN resomask 0)
  921.     ( ; then
  922.       (set pkdestdir   (tackon pkdir "amiga"))
  923.       (set pksourcedir (tackon sourcedir "fonts/pk/amiga"))
  924.       (set pkcopyopt   pkprev)
  925.       (set pkpat       "#[0-9]")
  926.       (copyfonts)
  927.     )
  928.    )
  929.    ; 180 fonts
  930.    (if (IN resomask 1)
  931.     ( ; then
  932.       (set pkdestdir (tackon pkdir "nec"))
  933.       (set pksourcedir (tackon sourcedir "fonts/pk/nec"))
  934.       (set pkcopyopt   pk180)
  935.       (set pkpat       "#[0-9]")
  936.       (copyfonts)
  937.     )
  938.    )
  939.    ; 300 fonts
  940.    (if (IN resomask 2)
  941.     ( ; then
  942.       (set pkdestdir (tackon pkdir "deskjet"))
  943.       (set pksourcedir (tackon sourcedir "fonts/pk/deskjet"))
  944.       (set pkcopyopt   pk300)
  945.       (set pkpat       "#[0-9]")
  946.       (copyfonts)
  947.     )
  948.    )
  949.    ; 360 fonts
  950.    (if (IN resomask 3)
  951.     ( ; then
  952.       (set pkdestdir (tackon pkdir "nechi"))
  953.       (set pksourcedir (tackon sourcedir "fonts/pk/nechi"))
  954.       (set pkcopyopt   pk360)
  955.       (set pkpat       "#[0-9]")
  956.       (copyfonts)
  957.     )
  958.    )
  959.    ; 600 fonts
  960.    (if (IN resomask 4)
  961.     ( ; then
  962.       (set pkdestdir (tackon pkdir "ljfour"))
  963.       (set pksourcedir (tackon sourcedir "fonts/pk/ljfour"))
  964.       (set pkcopyopt   pk600)
  965.       (set pkpat       "#[0-9]")
  966.       (copyfonts)
  967.     )
  968.    )
  969.    ; 204x196 fonts
  970.    (if (IN resomask 5)
  971.     ( ; then
  972.       (set pkdestdir (tackon pkdir "fax"))
  973.       (set pksourcedir (tackon sourcedir "fonts/pk/fax"))
  974.       (set pkcopyopt   pkfax)
  975.       (set pkpat       "#[0-9]")
  976.       (copyfonts)
  977.     )
  978.    )
  979.  )
  980. )
  981.  
  982. (complete 80)
  983.  
  984.  
  985. ;------mf progs--------------------
  986. (if (IN instmask 5)
  987.  ( ; then
  988.    (makedir mfdir)
  989.    (copyfiles (source (tackon sourcedir "metafont.info"))
  990.               (dest   @default-dest)
  991.    )
  992.    (copyfiles (source (tackon sourcedir "metafont"))
  993.               (dest   mfdir)
  994.               (pattern "(ReadMe|bases|bin|doc|pool|config|rexx|ENV)")
  995.               (infos)
  996.    )
  997.    (if (= callmf 1)
  998.     ( ; then batch
  999.       (copyfiles (source (tackon sourcedir "metafont/ENV"))
  1000.                  (dest   "ENV:")
  1001.                  (choices "CALLMF-batch")
  1002.                  (newname "CALLMF")
  1003.       )
  1004.       (copyfiles (source (tackon sourcedir "metafont/ENV"))
  1005.                  (dest   "ENVARC:")
  1006.                  (choices "CALLMF-batch")
  1007.                  (newname "CALLMF")
  1008.       )
  1009.     )
  1010.    )
  1011.    (if (= callmf 2)
  1012.     ( ; then immediately
  1013.       (copyfiles (source (tackon sourcedir "metafont/ENV"))
  1014.                  (dest   "ENV:")
  1015.                  (choices "CALLMF"))
  1016.       (copyfiles (source (tackon sourcedir "metafont/ENV"))
  1017.                  (dest   "ENVARC:")
  1018.                  (choices "CALLMF"))
  1019.    )
  1020.   )
  1021.  )
  1022. )
  1023.  
  1024. (complete 85)
  1025.  
  1026.  
  1027. ;------mf fnt source---------------
  1028. (if (IN instmask 6)
  1029.  ( ; then
  1030.    (makedir mfdir)
  1031.    (copyfiles (source (tackon sourcedir "metafont.info"))
  1032.               (dest   @default-dest)
  1033.    )
  1034.    (copyfiles (source  (tackon sourcedir "metafont"))
  1035.               (dest    mfdir)
  1036.               (choices "inputs")
  1037.               (infos)
  1038.    )
  1039.  )
  1040. )
  1041.  
  1042.  
  1043. (complete 99)
  1044.  
  1045. (if (IN instmask 5)
  1046.     (startup @app-name (prompt  #startup-prompt)
  1047.                        (help    #startup-help)
  1048.                        (command (cat "Assign TeX: \"" @default-dest "\"\n"))
  1049.                        (command (cat "Assign MF: \"" mfdir "\"\n"))
  1050.                        (command (cat "Assign PKVol-amiga: \"" (tackon sourcedir "fonts/pk/amiga") "\" DEFER\n"))
  1051.                        (command (cat "Assign PKVol-nec: \"" (tackon sourcedir "fonts/pk/nec") "\" DEFER\n"))
  1052.                        (command (cat "Assign PKVol-deskjet: \"" (tackon sourcedir "fonts/pk/deskjet") "\" DEFER\n"))
  1053.                        (command (cat "Assign PKVol-nechi: \"" (tackon sourcedir "fonts/pk/nechi") "\" DEFER\n"))
  1054.                        (command (cat "Assign PKVol-ljfour: \"" (tackon sourcedir "fonts/pk/ljfour") "\" DEFER\n"))
  1055.                        (command (cat "Assign PKVol-fax: \"" (tackon sourcedir "fonts/pk/fax") "\" DEFER\n"))
  1056.                        (command "Path TeX:bin MF:bin ADD")
  1057.     )
  1058.     (startup @app-name (prompt  #startup-prompt)
  1059.                        (help    #startup-help)
  1060.                        (command (cat "Assign TeX: \"" @default-dest "\"\n"))
  1061.                        (command (cat "Assign PKVol-amiga: \"" (tackon sourcedir "fonts/pk/amiga") "\" DEFER\n"))
  1062.                        (command (cat "Assign PKVol-nec: \"" (tackon sourcedir "fonts/pk/nec") "\" DEFER\n"))
  1063.                        (command (cat "Assign PKVol-deskjet: \"" (tackon sourcedir "fonts/pk/deskjet") "\" DEFER\n"))
  1064.                        (command (cat "Assign PKVol-nechi: \"" (tackon sourcedir "fonts/pk/nechi") "\" DEFER\n"))
  1065.                        (command (cat "Assign PKVol-ljfour: \"" (tackon sourcedir "fonts/pk/ljfour") "\" DEFER\n"))
  1066.                        (command (cat "Assign PKVol-fax: \"" (tackon sourcedir "fonts/pk/fax") "\" DEFER\n"))
  1067.                        (command "Path TeX:bin ADD")
  1068.     )
  1069. )
  1070.  
  1071. (complete 100)
  1072.  
  1073.  
  1074. (exit)
  1075.